home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / modules / nessus-2.2.8.mo / usr / lib / nessus / plugins / ftp_realpath.nasl < prev    next >
Text File  |  2005-01-14  |  3KB  |  103 lines

  1. #
  2. # This script was written by Renaud Deraison <deraison@cvs.nessus.org>
  3. #
  4. # See the Nessus Scripts License for details
  5. #
  6.  
  7. if(description)
  8. {
  9.  script_id(10087);
  10.  script_version ("$Revision: 1.16 $");
  11.  script_cve_id("CVE-1999-0201");
  12.  name["english"] = "FTP real path";
  13.  name["francais"] = "Vrai chemin d'accΦs au rΘpertoire FTP";
  14.  script_name(english:name["english"], francais:name["francais"]);
  15.  
  16.  desc["english"] = "It is possible to gather the
  17. real path of the public area of the ftp server
  18. (like /home/ftp) by issuing the following
  19. command :
  20.  
  21.     CWD
  22.     
  23. This problem may help an attacker to find where
  24. to put a .rhost file using other security
  25. flaws.
  26.  
  27. Risk factor : Low";
  28.  
  29.  
  30.  desc["francais"] = "Il est possible d'obtenir
  31. le vrai chemin d'accΦs du rΘpertoire ftp
  32. public (comme /home/ftp), en entrant
  33. la commande :
  34.  
  35.     CWD
  36.     
  37. Ce problΦme peut aider un pirate α trouver
  38. ou mettre un fichier .rhost en utilisant
  39. d'autres problΦmes de sΘcuritΘ.
  40.  
  41. Facteur de risque : Faible";
  42.  
  43.  
  44.  script_description(english:desc["english"], francais:desc["francais"]);
  45.  
  46.  summary["english"] = "Get the real path of the remote ftp home";
  47.  summary["francais"] = "Obtient le vrai chemin d'accΦs au repertoire ftp distant";
  48.  script_summary(english:summary["english"], francais:summary["francais"]);
  49.  
  50.  script_category(ACT_GATHER_INFO);
  51.  
  52.  
  53.  script_copyright(english:"This script is Copyright (C) 1999 Renaud Deraison",
  54.         francais:"Ce script est Copyright (C) 1999 Renaud Deraison");
  55.  family["english"] = "FTP";
  56.  family["francais"] = "FTP";
  57.  script_family(english:family["english"], francais:family["francais"]);
  58.  script_dependencie("find_service.nes", "ftp_anonymous.nasl");
  59.  script_require_keys("ftp/anonymous");
  60.  script_require_ports("Services/ftp", 21);
  61.  exit(0);
  62. }
  63.  
  64. #
  65. # The script code starts here
  66. #
  67.  
  68. port = get_kb_item("Services/ftp");
  69. if(!port)port = 21;
  70. if(!get_port_state(port))exit(0);
  71.  
  72. anon = get_kb_item("ftp/anonymous");
  73. if(anon)
  74. {
  75.  soc = open_sock_tcp(port);
  76.  if(ftp_log_in(socket:soc, user:"anonymous",pass:"nessus@"))
  77.  {
  78.   data = string("CWD\r\n");
  79.   send(socket:soc, data:data);
  80.   a = recv_line(socket:soc, length:1024);
  81.   if("550 /" >< a){
  82.   report = "It is possible to gather the
  83. real path of the public area of the ftp server
  84. (like /home/ftp) by issuing the following
  85. command :
  86.     CWD
  87.     
  88. We determined that the root of the remote FTP server is located
  89. under '" + (ereg_replace(pattern:"^550 (/.*):.*", string:a, replace:"\1")) + "'.
  90.     
  91. This problem may help an attacker to find where
  92. to put a .rhost file using other security
  93. flaws.
  94.  
  95. Risk factor : Low";
  96.   security_warning(port:port, data:report);
  97.   }
  98.   data = string("QUIT\r\n");
  99.   send(socket:soc, data:data);
  100.  }
  101. close(soc);
  102. }
  103.